home *** CD-ROM | disk | FTP | other *** search
/ Chip 2004 December / 2004-12 CHIP.iso / CHIP / Porady / Srodowisko PHP-MySQL / WAMP5 1.3 / wamp5_1.3.exe / {app} / Apache / include / hsregex.h < prev    next >
C/C++ Source or Header  |  2004-04-15  |  2KB  |  90 lines

  1. /* DON'T EVEN THINK ABOUT EDITING THIS, go see regex/Makefile,
  2.  * search for mkh */
  3. #ifndef _REGEX_H_
  4. #define    _REGEX_H_    /* never again */
  5. /* ========= begin header generated by ./mkh ========= */
  6. #ifdef __cplusplus
  7. extern "C" {
  8. #endif
  9.  
  10. /* === regex2.h === */
  11. #ifndef API_EXPORT
  12. #ifdef WIN32
  13. #define API_EXPORT(type)    __declspec(dllexport) type __stdcall
  14. #else
  15. #define API_EXPORT(type)    type
  16. #endif
  17. #endif
  18.  
  19. #if defined(MAC_OS) || defined(MAC_OS_X_SERVER)
  20. #define ap_private_extern __private_extern__
  21. #else
  22. #define ap_private_extern
  23. #endif
  24.  
  25. typedef off_t regoff_t;
  26. typedef struct {
  27.     int re_magic;
  28.     size_t re_nsub;        /* number of parenthesized subexpressions */
  29.     const char *re_endp;    /* end pointer for REG_PEND */
  30.     struct re_guts *re_g;    /* none of your business :-) */
  31. } regex_t;
  32. typedef struct {
  33.     regoff_t rm_so;        /* start of match */
  34.     regoff_t rm_eo;        /* end of match */
  35. } regmatch_t;
  36.  
  37.  
  38. /* === regcomp.c === */
  39. API_EXPORT(int) regcomp(regex_t *, const char *, int);
  40. #define    REG_BASIC    0000
  41. #define    REG_EXTENDED    0001
  42. #define    REG_ICASE    0002
  43. #define    REG_NOSUB    0004
  44. #define    REG_NEWLINE    0010
  45. #define    REG_NOSPEC    0020
  46. #define    REG_PEND    0040
  47. #define    REG_DUMP    0200
  48.  
  49.  
  50. /* === regerror.c === */
  51. #define    REG_NOMATCH     1
  52. #define    REG_BADPAT     2
  53. #define    REG_ECOLLATE     3
  54. #define    REG_ECTYPE     4
  55. #define    REG_EESCAPE     5
  56. #define    REG_ESUBREG     6
  57. #define    REG_EBRACK     7
  58. #define    REG_EPAREN     8
  59. #define    REG_EBRACE     9
  60. #define    REG_BADBR    10
  61. #define    REG_ERANGE    11
  62. #define    REG_ESPACE    12
  63. #define    REG_BADRPT    13
  64. #define    REG_EMPTY    14
  65. #define    REG_ASSERT    15
  66. #define    REG_INVARG    16
  67. #define    REG_ATOI    255    /* convert name to number (!) */
  68. #define    REG_ITOA    0400    /* convert number to name (!) */
  69. API_EXPORT(size_t) regerror(int, const regex_t *, char *, size_t);
  70.  
  71.  
  72. /* === regexec.c === */
  73. API_EXPORT(int) regexec(const regex_t *, const char *, size_t, regmatch_t [], int);
  74. #define    REG_NOTBOL    00001
  75. #define    REG_NOTEOL    00002
  76. #define    REG_STARTEND    00004
  77. #define    REG_TRACE    00400    /* tracing of execution */
  78. #define    REG_LARGE    01000    /* force large representation */
  79. #define    REG_BACKR    02000    /* force use of backref code */
  80.  
  81.  
  82. /* === regfree.c === */
  83. API_EXPORT(void) regfree(regex_t *);
  84.  
  85. #ifdef __cplusplus
  86. }
  87. #endif
  88. /* ========= end header generated by ./mkh ========= */
  89. #endif
  90.